@pexip/media
Enumerations
Interfaces
- AudioDetectionSignals
- AudioSignalDetectionOptions
- DenoiseParams
- ExtendedMediaTrackSettings
- Media
- MediaAttributes
- MediaChangesSignals
- MediaController
- MediaOptions
- MediaProps
- MediaSettings
- PreviewControllerProps
- PreviewEventHandler
- PreviewStreamController
- PreviewStreamParams
- Segmenters
- StreamTrackSignals
- VoiceActivityDetectionOptions
Type Aliases
CreatePreviewStreamController
Ƭ CreatePreviewStreamController: typeof createPreviewStreamController
ExtendedMediaTrackSettingsKey
Ƭ ExtendedMediaTrackSettingsKey: keyof ExtendedMediaTrackSettings
MediaProcessor
Ƭ MediaProcessor: Process
<Promise
<Media
>>
MediaSignals
Ƭ MediaSignals: MediaSignalsRequired
& MediaSignalsOptional
MediaSignalsOptional
Ƭ MediaSignalsOptional: Pick
<Partial
<MediaChangesSignals
>, "onDevicesChanged"
| "onStatusChanged"
> & Partial
<StreamTrackSignals
>
MediaSignalsRequired
Ƭ MediaSignalsRequired: Pick
<MediaChangesSignals
, "onMediaChanged"
> & AudioDetectionSignals
Pipeline
Ƭ Pipeline<T
>: [Process
<T
>, ...MediaProcessor[]]
A media pipeline to get and process media
Type parameters
Name | Type |
---|---|
T | MediaDeviceRequest |
PreviewInput
Ƭ PreviewInput: MediaDeviceInfoLike
| undefined
Process
Ƭ Process<T
>: (a
: T
) => Promise
<Media
>
Type parameters
Name |
---|
T |
Type declaration
▸ (a
): Promise
<Media
>
Parameters
Name | Type |
---|---|
a | T |
Returns
Promise
<Media
>
ProcessMedia
Ƭ ProcessMedia: (media
: Media
) => undefined
| Media
Type declaration
▸ (media
): undefined
| Media
Parameters
Name | Type |
---|---|
media | Media |
Returns
undefined
| Media
Unsubscribe
Ƭ Unsubscribe: () => void
Type declaration
▸ (): void
Returns
void
UserMediaValidator
Ƭ UserMediaValidator: (status
: UserMediaStatus
) => boolean
Type declaration
▸ (status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
VideoRenderParams
Ƭ VideoRenderParams: Omit
<RenderParams
, "backgroundImage"
| "effects"
> & { bgImageUrl
: string
; frameRate
: number
; videoSegmentation
: RenderEffects
}
VideoStreamTrackProcessorAPIs
Ƭ VideoStreamTrackProcessorAPIs: "stream"
| "canvas"
Use which processor API to process the stream track
stream
- Use MediaStreamTrackProcessor, when available
canvas
- Use Canvas
Variables
REQUIRED_SIGNAL_KEYS
• Const
REQUIRED_SIGNAL_KEYS: readonly ["onMediaChanged"
, "onVAD"
, "onSilentDetected"
]
Functions
areBothGranted
▸ areBothGranted(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
createAudioMixingProcess
▸ createAudioMixingProcess(getCurrrentMedia
, scope?
): Process
<Promise
<Media
>>
Create a Audio Mixing Processor and will own the stream passed-in
Parameters
Name | Type | Default value |
---|---|---|
getCurrrentMedia | () => undefined | MediaStream | undefined |
scope | string | 'mixer' |
Returns
createAudioStreamProcess
▸ createAudioStreamProcess(«destructured»
): Process
<Promise
<Media
>>
Create a Audio Stream Processor and will own the stream passed-in
Parameters
Name | Type |
---|---|
«destructured» | AudioProcessOptions & ThrottleOptions |
Returns
createMedia
▸ createMedia(options
): MediaController
Create an object to interact with the media scream, which is usually used for our main stream.
See
MediaOptions
Parameters
Name | Type |
---|---|
options | MediaOptions |
Returns
createMediaSignal
▸ createMediaSignal<T
>(name
, crucial?
, variant?
): Signal
<T
>
Create a general signal with consistent scoped name
Default Value
true
See
Signal
Default Value
'generic'
Type parameters
Name | Type |
---|---|
T | undefined |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
name | string | undefined | Signal name |
crucial | boolean | true | Signify if the signal is unmissable. |
variant | SignalVariant | 'generic' | The variant of the signal |
Returns
Signal
<T
>
createMediaSignals
▸ createMediaSignals<K
>(more
, scope?
): Pick
<Required
<MediaSignals
>, SignalKeys
>
Create and return all required and optional (if specified with more
),
signals for media to work
See
- MediaSignalsOptional
- Signal
The following signals created by default
- 'onMediaChanged',
- 'onVAD',
- REQUIRED_SIGNAL_KEYS
Type parameters
Name | Type |
---|---|
K | extends "onDevicesChanged" | "onStatusChanged" | keyof StreamTrackSignals |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
more | K [] | undefined | Keys from MediaSignalsOptional , |
scope | string | '' | any scope prefix for the generated signal name, |
Returns
Pick
<Required
<MediaSignals
>, SignalKeys
>
createPreviewStreamController
▸ createPreviewStreamController(«destructured»
): PreviewStreamController
Parameters
Name | Type |
---|---|
«destructured» | PreviewStreamParams |
Returns
createVideoStreamProcess
▸ createVideoStreamProcess(«destructured»
): Process
<Promise
<Media
>>
Parameters
Name | Type |
---|---|
«destructured» | VideoStreamProcessOptions |
Returns
deriveInitialPermissionStatus
▸ deriveInitialPermissionStatus(prevStatus
, getPermissionState?
): Promise
<UserMediaStatus
>
Parameters
Name | Type | Default value |
---|---|---|
prevStatus | UserMediaStatus | undefined |
getPermissionState | (anyActiveStream? : boolean ) => Promise <InputDevicePermission > | getInputDevicePermissionState |
Returns
Promise
<UserMediaStatus
>
getPermissionStatus
▸ getPermissionStatus(getPermissionState?
): Promise
<Initial
| InitialPermissionsGranted
| InitialPermissionsNotGranted
| InitialPermissionsVideoInputDenied
| InitialPermissionsAudioInputDenied
| InitialPermissionsVideoInputGranted
| InitialPermissionsAudioInputGranted
| InitialPermissionsGrantedVideoInputDenied
| InitialPermissionsGrantedAudioInputDenied
| PermissionsRejected
>
Parameters
Name | Type | Default value |
---|---|---|
getPermissionState | (anyActiveStream? : boolean ) => Promise <InputDevicePermission > | getInputDevicePermissionState |
Returns
Promise
<Initial
| InitialPermissionsGranted
| InitialPermissionsNotGranted
| InitialPermissionsVideoInputDenied
| InitialPermissionsAudioInputDenied
| InitialPermissionsVideoInputGranted
| InitialPermissionsAudioInputGranted
| InitialPermissionsGrantedVideoInputDenied
| InitialPermissionsGrantedAudioInputDenied
| PermissionsRejected
>
hasNoAudioDevices
▸ hasNoAudioDevices(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
hasNoDevice
▸ hasNoDevice(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
hasNoVideoDevices
▸ hasNoVideoDevices(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isAudioDeviceInUse
▸ isAudioDeviceInUse(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isDeviceInUse
▸ isDeviceInUse(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isFallback
▸ isFallback(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isFallbackAudio
▸ isFallbackAudio(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isFallbackVideo
▸ isFallbackVideo(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isGranted
▸ isGranted(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isGrantedAudio
▸ isGrantedAudio(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isGrantedOnlyAudio
▸ isGrantedOnlyAudio(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isGrantedOnlyAudioNoVideoDevices
▸ isGrantedOnlyAudioNoVideoDevices(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isGrantedOnlyVideo
▸ isGrantedOnlyVideo(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isGrantedOnlyVideoNoAudioDevices
▸ isGrantedOnlyVideoNoAudioDevices(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isGrantedVideo
▸ isGrantedVideo(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isInitial
▸ isInitial(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isInitialPermissions
▸ isInitialPermissions(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isInitialPermissionsGranted
▸ isInitialPermissionsGranted(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isInitialPermissionsNotGranted
▸ isInitialPermissionsNotGranted(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isOnlyAudioError
▸ isOnlyAudioError(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isOnlyVideoError
▸ isOnlyVideoError(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isOverConstrained
▸ isOverConstrained(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isPromptAudio
▸ isPromptAudio(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isPromptVideo
▸ isPromptVideo(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isRejected
▸ isRejected(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isRejectedOnlyAudio
▸ isRejectedOnlyAudio(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isRejectedOnlyVideo
▸ isRejectedOnlyVideo(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isUnknownError
▸ isUnknownError(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
isVideoDeviceInUse
▸ isVideoDeviceInUse(status
): boolean
Parameters
Name | Type |
---|---|
status | UserMediaStatus |
Returns
boolean
setLogger
▸ setLogger(newLogger
): void
Parameters
Name | Type |
---|---|
newLogger | Logger |
Returns
void
toDeniedDevices
▸ toDeniedDevices(status?
): undefined
| DeniedDevices
Parameters
Name | Type |
---|---|
status? | UserMediaStatus |
Returns
undefined
| DeniedDevices